home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / xml4j.jar / com / ibm / xml / parser / TXCharacterData.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-08-30  |  2.2 KB  |  106 lines

  1. package com.ibm.xml.parser;
  2.  
  3. import org.w3c.dom.CharacterData;
  4. import org.w3c.dom.DOMException;
  5.  
  6. public abstract class TXCharacterData extends Child implements CharacterData {
  7.    static final long serialVersionUID = 8142858563528507880L;
  8.    String data;
  9.  
  10.    public String getNodeValue() {
  11.       return this.getData();
  12.    }
  13.  
  14.    public String getData() {
  15.       return this.data;
  16.    }
  17.  
  18.    public void setNodeValue(String var1) {
  19.       this.setData(var1);
  20.    }
  21.  
  22.    public void setData(String var1) {
  23.       this.data = var1;
  24.       ((Child)this).clearDigest();
  25.    }
  26.  
  27.    public int getLength() {
  28.       return this.data.length();
  29.    }
  30.  
  31.    public synchronized String substringData(int var1, int var2) throws DOMException {
  32.       if (var1 >= 0 && var1 < this.data.length()) {
  33.          if (var2 < 0) {
  34.             throw new TXDOMException((short)1, "Invalid count: " + var2);
  35.          } else {
  36.             int var3 = var1 + var2;
  37.             if (var3 > this.data.length()) {
  38.                var3 = this.data.length();
  39.             }
  40.  
  41.             return this.data.substring(var1, var3);
  42.          }
  43.       } else {
  44.          throw new TXDOMException((short)1, "Out of bounds: " + var1 + ", the length of data is " + this.data.length());
  45.       }
  46.    }
  47.  
  48.    public synchronized void appendData(String var1) throws DOMException {
  49.       StringBuffer var2 = new StringBuffer(this.data.length() + var1.length());
  50.       var2.append(this.data);
  51.       var2.append(var1);
  52.       this.data = var2.toString();
  53.       ((Child)this).clearDigest();
  54.    }
  55.  
  56.    public synchronized void insertData(int var1, String var2) throws DOMException {
  57.       if (var1 >= 0 && var1 <= this.data.length()) {
  58.          StringBuffer var3 = new StringBuffer(this.data.length() + var2.length());
  59.          var3.append(this.data);
  60.          var3.insert(var1, var2);
  61.          this.data = var3.toString();
  62.          ((Child)this).clearDigest();
  63.       } else {
  64.          throw new TXDOMException((short)1, "offset is out of bounds: " + var1);
  65.       }
  66.    }
  67.  
  68.    public synchronized void deleteData(int var1, int var2) throws DOMException {
  69.       if (var1 >= 0 && var1 < this.data.length()) {
  70.          if (var2 < 0) {
  71.             throw new TXDOMException((short)1, "Invalid count: " + var2);
  72.          } else {
  73.             int var3 = var1 + var2;
  74.             if (var3 >= this.data.length()) {
  75.                this.data = this.data.substring(0, var1);
  76.             } else {
  77.                this.data = this.data.substring(0, var1) + this.data.substring(var1 + var2);
  78.             }
  79.  
  80.             ((Child)this).clearDigest();
  81.          }
  82.       } else {
  83.          throw new TXDOMException((short)1, "Out of bounds: " + var1 + ", the length of data is " + this.data.length());
  84.       }
  85.    }
  86.  
  87.    public synchronized void replaceData(int var1, int var2, String var3) throws DOMException {
  88.       if (var1 >= 0 && var1 < this.data.length()) {
  89.          if (var2 < 0) {
  90.             throw new TXDOMException((short)1, "Invalid count: " + var2);
  91.          } else {
  92.             int var4 = var1 + var2;
  93.             if (var4 >= this.data.length()) {
  94.                this.data = this.data.substring(0, var1) + var3;
  95.             } else {
  96.                this.data = this.data.substring(0, var1) + var3 + this.data.substring(var4);
  97.             }
  98.  
  99.             ((Child)this).clearDigest();
  100.          }
  101.       } else {
  102.          throw new TXDOMException((short)1, "Out of bounds: " + var1 + ", the length of data is " + this.data.length());
  103.       }
  104.    }
  105. }
  106.